#include <iostream>

using namespace std;

const int N = 11;
int ret;
int dx[4] = {0, 0, 1, -1};
int dy[4] = {1, -1, 0, 0};
int n , m;
int st[N][N];

void dfs(int a , int b)
{
    if(a < 1 || a >= n || b < 1 || b >= m)
    {
        ret ++;
        return;
    }

    for(int i = 0;i < 4;i ++)
    {
        int x = a + dx[i] , y = b + dy[i];
        if(!st[x][y])
        {
            st[x][y] = true;
            dfs(x , y);
            st[x][y] =false;
        }
    }
}
int main()
{
    cin >> n >> m;
    //从左边
    for(int i = 1;i < n;i ++)
    {
        st[i][0] = st[i][1] = true;
        dfs(i , 1);
        st[i][0] = st[i][1] = false;
    }

    for(int j = 1;j < m;j ++)
    {
        st[0][j] = st[1][j] = true;
        dfs(1 , j);
        st[0][j] = st[1][j] = false;
    }

    cout << ret << endl;
    return 0;
}